﻿using System.Xml;
using System.Xml.Serialization;

namespace Bpmn.Xml;

/// <remarks/>
[Serializable]
[XmlType(Namespace = "http://www.omg.org/spec/BPMN/20100524/MODEL", TypeName = "tTimerEventDefinition")]
[XmlRoot("timerEventDefinition", Namespace = "http://www.omg.org/spec/BPMN/20100524/MODEL", IsNullable = false)]
public partial class TimerEventDefinition : EventDefinition
{
    /// <remarks/>
    [XmlElement("timeCycle", typeof(Expression))]
    [XmlElement("timeDate", typeof(Expression))]
    [XmlElement("timeDuration", typeof(Expression))]
    [XmlChoiceIdentifier("ItemElementName")]
    public Expression Item { get; set; } = default!;

    /// <remarks/>
    [XmlIgnore]
    public ItemChoiceType ItemElementName { get; set; } = default!;
}
